package com.ta.mapper;

import com.ta.pojo.Address;
import com.ta.pojo.District;
import org.springframework.stereotype.Repository;
import org.springframework.web.servlet.DispatcherServlet;

import java.util.Date;
import java.util.List;

@Repository
public interface AddressMapper {
    /**
     *省份下的管辖城市
     * @param parent
     * @return 父代号
     */
    List<District> findByParent(String parent);

    /**
     * 代号当属的名称
     * @param code
     * @return
     */
    String findByCode(String code);

    /**
     * 统计地址条数
     * @param uid
     * @return
     */
    Integer countAddress(Integer uid);

    /**
     * 增加地址
     * @param address
     * @return
     */
    Integer insert(Address address);

    /**
     * 地址信息
     * @param uid
     * @return
     */
    List<Address> findByUid(Integer uid);

    /**
     * 设计默认地址
     * @param aid
     * @return
     */
    Integer modifyDefaultAid(Integer aid,
                             String modifiedUser,
                             Date modifiedTime);

    /**
     * 设计其他地址非默认
     * @param uid
     * @return
     */
    Integer modifyUid(Integer uid,
                      String modifiedUser,
                      Date modifiedTime);

    /**
     * 当前地址ID信息
     * @param aid
     * @return
     */
    Address findByAid(Integer aid);

    /**
     * 用户的属有地址ID信息
     * @param aid
     * @param uid
     * @return
     */
    Address findByAidAndUid(Integer aid, Integer uid);

    /**
     * 删除地址信息
     * @param aid
     * @return
     */
    Integer delete(Integer aid);

    /**
     * 修改地址信息
     * @param address
     * @return
     */
    Integer modify(Address address);
}
